#ifndef CVALUE
#define CVALUE
#include <cppcommon.h>
class CValue
{
	private:
	STRING m_strValue;
	DOUBLE m_numValue;
	bool isNumber(STRING _strValue);
	public:
#ifdef _LIBCOMMON
	CValue();
#endif
	virtual ~CValue();
	virtual CValue& operator = (const INT& _intValue);
	virtual CValue& operator = (const DOUBLE& _numberValue);
	virtual CValue& operator = (const STRING& _strValue);
	virtual void setString (const STRING& _strValue);
	virtual void setNumber (const DOUBLE& _numberValue);
	virtual STRING getString();
	virtual DOUBLE getNumber();
	virtual INT getInt();
};


#ifdef _MSC_VER
#ifdef _LIBCOMMON
#define _DLLFUNC __declspec(dllexport)
#else
#define _DLLFUNC __declspec(dllimport)
#endif
#else
#define _DLLFUNC
#endif

typedef CValue* PCValue;
typedef PCValue (*PCreateNewCValueNULL)();
extern "C" _DLLFUNC PCValue CreateNewCValueNULL();

#endif



